﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Data;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Imaging;
using System.Windows.Navigation;
using System.Windows.Shapes;
using WpfApplication2.SindicatoWebService;
using WpfApplication2.Recursos.Datasets;
using CrystalDecisions.Windows.Forms;

namespace WpfApplication2.Views.Informes
{
    /// <summary>
    /// Interaction logic for OrdenesVendidas.xaml
    /// </summary>
    public partial class OrdenesVendidas : Page
    {
        public Service1SoapClient WS { get; set; }
        public DateTime FechaDesde { get; set; }
        public DateTime FechaHasta { get; set; }

        public OrdenesVendidas(DateTime desde, DateTime hasta)
        {
            WS = new Service1SoapClient();
            FechaDesde = desde;
            FechaHasta = hasta;
            InitializeComponent();
        }

        private void Page_Loaded(object sender, RoutedEventArgs e)
        {
            var entradas = WS.InformeOrdenesVendidas(FechaDesde, FechaHasta);
            var dataset = new OrdenesVendidasDataset();
            foreach (var data in entradas)
            {
                dataset.Tables[0].Rows.Add(data.Nombre, data.Cantidad, data.Total);
            }
            
            var reporte = new WpfApplication2.Recursos.Informe.OrdenesVendidas();
            reporte.SetDataSource(dataset);
            reporte.SetParameterValue(0, FechaDesde.ToShortDateString());
            reporte.SetParameterValue(1, FechaHasta.ToShortDateString());
            CrystalReportViewer rptViewer = new CrystalReportViewer();
            rptViewer.ReportSource = reporte;
            windowsFormHost.Child = rptViewer;
        }
    }
}
